// utils/request.js
export default {
	baseURL: 'https://api.example.com', // 你的基础 URL

	// 封装通用请求方法
	async request({
		url,
		method = 'GET',
		data = {},
		headers = {}
	}) {
		try {
			// 发起请求
			const res = await uni.request({
				url: this.baseURL + url, // 拼接完整 URL
				method,
				data,
				header: {
					'Content-Type': 'application/json',
					...headers // 合并额外的请求头
				}
			});

			// 处理响应结果
			if (res.statusCode === 200) {
				return res.data; // 请求成功返回数据
			} else {
				throw new Error(`请求失败，状态码：${res.statusCode}`);
			}
		} catch (error) {
			// 处理请求失败的情况
			throw new Error(error.message || '请求失败');
		}
	},

	// 具体请求方法封装
	async getExampleData(params) {
		return this.request({
			url: '/example', // 具体的请求路径
			method: 'GET',
			data: params
		});
	},

	async postExampleData(data) {
		return this.request({
			url: '/example', // 具体的请求路径
			method: 'POST',
			data
		});
	},

	async getUserInfo(userId) {
		return this.request({
			url: `/user/${userId}`, // 用户信息请求
			method: 'GET'
		});
	},

	async updateUser(data) {
		return this.request({
			url: '/user/update', // 更新用户信息请求
			method: 'POST',
			data
		});
	}
};